Migration de machines virtuelles à l'aide de l'hyperviseur QEMU-KVM
Table des matières
Migration de machines virtuelles avec hyperviseur QEMU-KVM
Nécessité d'une migration de machine virtuelle dans le cloud computing
Avantages de la migration de machines virtuelles
Exigences de l'hyperviseur KVM
Création de votre première machine virtuelle
Migration de la machine virtuelle à l'aide de l'hyperviseur QEMU-KVM
L'avenir des technologies de migration dans le cloud computing
Cet article examine rapidement la nécessité de la migration de machines virtuelles, ses avantages, les étapes à suivre pour développer un banc d’essai expérimental pour un environnement de migration de machines virtuelles dans le cloud et les tendances en matière de technologie de virtualisation.
Le cloud computing hérite de l'une des fonctionnalités clés offertes par la virtualisation des serveurs, appelée migration de machines virtuelles (VM). La migration de machines virtuelles est définie comme : « Le processus de transfert d'une machine virtuelle d'une machine physique vers un serveur de centre de données cible pour obtenir un équilibrage de charge, une tolérance aux pannes, une consolidation et une maintenance des serveurs. »
Un administrateur cloud peut exécuter une migration de machine virtuelle dans un centre de données cloud lorsque l'une des situations suivantes se produit :
•Surcharge du serveur : lorsqu'un serveur source est surchargé, un ensemble de machines virtuelles de ce serveur est migré vers un serveur sous-chargé à l'aide de n'importe quelle technique de migration de machines virtuelles.
•Maintenance du serveur : la maintenance de tout centre de données cloud est un processus continu. Par conséquent, chaque fois qu'une maintenance du serveur est nécessaire, les machines virtuelles du serveur source sont migrées vers un autre centre de données.
•Panne du serveur : chaque fois qu'une panne du serveur se produit, les machines virtuelles sont migrées du serveur défectueux vers le serveur cible.
•L'avantage le plus important de la migration dynamique des machines virtuelles est l'augmentation du temps de disponibilité et la réduction des temps d'arrêt. Un environnement virtualisé soigneusement conçu offre le temps de disponibilité maximal possible pour n'importe quelle application.
•Un autre avantage important est qu'il permet d'économiser de l'énergie, ce qui en fait un processus respectueux de l'environnement. Vous pouvez facilement consolider vos machines virtuelles en fonction de la charge et de l'utilisation sur un nombre réduit d'hyperviseurs en dehors des heures de travail. Une fois les machines virtuelles migrées, vous pouvez mettre hors tension les hyperviseurs inutilisés.
•Les autres avantages incluent un processus de mise à niveau matérielle/logicielle simple en déplaçant la machine virtuelle entre différents hyperviseurs. Une fois que vous avez la possibilité de déplacer librement des machines virtuelles entre différents serveurs physiques, les avantages sont innombrables. Attention cependant : la migration de machines virtuelles nécessite une planification appropriée et détaillée.
1.pour la configuration de l'environnement de migration de machines virtuelles
Un environnement de virtualisation peut être mis en œuvre à l'aide de l'hyperviseur KVM. La configuration requise pour l'exécution de machines virtuelles est mise en évidence ci-dessous.
2.pour le système hôte : la configuration minimale requise pour le système hôte est de 2 Go de RAM plus de la RAM supplémentaire pour les machines virtuelles, 6 Go d'espace disque pour l'hôte plus l'espace disque requis pour les machines virtuelles.
L'hyperviseur KVM nécessite :
•Un processeur Intel avec les extensions de virtualisation Intel VT-x et Intel 64 pour les systèmes x86 ; ou
•Un processeur AMD avec les extensions de virtualisation AMD-V et AMD64. Les extensions de virtualisation (Intel VT-x ou AMD-V) sont nécessaires pour une virtualisation complète. La commande suivante peut être utilisée pour vérifier si le système prend en charge la virtualisation du processeur ou non :
$ grep -E ‘svm|vmx’ /proc/cpuinfo |
Le processus de création d'une machine virtuelle peut être divisé en cinq étapes répertoriées ci-dessous.
Étape 1 : ouvrez l'outil graphique du gestionnaire de machines virtuelles en saisissant virt-manager dans un terminal. Une capture d'écran de l'outil graphique virt-manager connecté à l'hyperviseur local QEMU-KVM est présentée dans la Figure 1.
Étape 2 : installez la machine virtuelle invitée en cliquant sur « nouveau », puis saisissez le nom de votre machine invitée. Dans mon banc d'essai, elle est nommée « vm2 » pour créer l'instance d'une machine virtuelle Ubuntu. J'utilise également le serveur NFS pour installer le système d'exploitation invité illustré à la figure 2.
Étape 3 : pour éliminer la surcharge du stockage sur disque de la machine virtuelle pendant le processus de migration, implémentez le serveur NFS qui stocke l'image .iso de la machine virtuelle du système d'exploitation invité.
Étape 4 : la machine virtuelle est configurée avec une plage de RAM de 1 Go à 8 Go et une traduction d'adresses réseau (NAT) comme interface réseau. Une capture d'écran de la machine virtuelle avec une RAM de 2 Go et une configuration NAT est présentée dans la Figure 3.
L’objectif de la configuration réseau NAT pour les machines virtuelles est de permettre l’accès au réseau à partir de la machine du système d’exploitation hôte.
Étape 5 : connectez-vous au serveur distant de destination.
La connectivité du serveur source vers le serveur de destination avec l'adresse IP 172.20.0.3 s'effectue à l'aide de la méthode Secure Shell (SSH). Cliquez maintenant sur « commencer l'installation » ; les étapes restantes sont les mêmes que celles de l'installation standard du système d'exploitation Ubuntu, comme le montre la figure 4.
Les étapes à suivre pour effectuer la migration de la machine virtuelle à l'aide de l'hyperviseur KVM sont les suivantes.
Étape 1 : une liaison SSH sécurisée est configurée entre le serveur source et le serveur cible.
Étape 2 : une machine virtuelle est démarrée sur l'hôte source et le paramètre de bande passante du canal est configuré pour l'hyperviseur QEMU-KVM. La liste des machines virtuelles nouvellement déployées est présentée dans la Figure 5 et peut être vérifiée à l'aide de la commande suivante :
$ virsh list – all |
Étape 3 : les tests de charge de travail dans le cloud sont exécutés sur les machines virtuelles. Lancez maintenant le processus de migration des machines virtuelles à l'aide de la commande suivante, comme illustré dans la figure 6 :
$ virsh migrate -- live vm2 qemu+ssh://server3.eexample.com/system |
La migration de machines virtuelles est une opération fondamentale pour la virtualisation du cloud computing. Dans un centre de données de cloud computing, la migration de machines virtuelles avant copie est la technique la plus couramment utilisée en raison de sa nature robuste et fiable.
Récemment, un nouveau paradigme de technologie de virtualisation appelé conteneurisation a commencé à attirer une attention considérable. Dans la conteneurisation, les applications peuvent partager leur noyau de système d'exploitation hôte et contenir uniquement les binaires et bibliothèques nécessaires, ce qui les rend plus légères par rapport aux machines virtuelles.